package ec.edu.uce.tour.excepcion;

import javax.ejb.ApplicationException;

@ApplicationException(rollback=true)
public class AccesoDatosExcepcion extends Exception {

	private static final long serialVersionUID = 1L;
	
	public AccesoDatosExcepcion(){
		super();
	}
	
	public AccesoDatosExcepcion(String message){
		super(message);
	}
	

	public AccesoDatosExcepcion(Throwable cause){
		if(cause.getCause().getClass().getSimpleName().equals("ConstraintViolationException"))
		{
			this.initCause( new AccesoDatosExcepcion("No se pueden guardar datos duplicados o codigos duplicados.", cause));
			return;
		}
		if(cause.getCause().getClass().getSimpleName().equals("SQLGrammarException"))
		{
			this.initCause(new AccesoDatosExcepcion("Por favor contacte con su administrador .", cause));
			return;
		}
		else
			this.initCause(new AccesoDatosExcepcion("No se puede acceder a los datos.",cause));
			return;
		}
	
	public AccesoDatosExcepcion(String message, Throwable cause)
	{
		super(message, cause);
		
	}
	
	

}
